package com.sgzn.sgpay.model.request;

import com.sgzn.sgpay.model.request.able.SgsReqAble;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;
import org.hibernate.validator.constraints.Length;
import org.hibernate.validator.constraints.NotBlank;

import javax.validation.constraints.Pattern;

/**
 * 商户新增请求
 * @author zhongzhongyong
 * @version Id: SgsMerchantAddRequest.java, v 0.1 2018/4/17 21:58 zhongzhongyong Exp $$
 */
@EqualsAndHashCode(callSuper = true)
@Data
@ToString(callSuper = true)
public class SgsMerchantAddRequest extends SgsBaseRequest implements SgsReqAble{

    /**
     * 商户名
     */
    @Length(max = 128)
    @NotBlank(message = "商户名不能为空")
    private String merchantName;

    /**
     * 商户联系方式
     */
    @NotBlank(message = "商户联系方式不能为空")
    @Pattern(regexp="\\d{11}", message="contact必须是11位手机号码")
    private String contact;

    /**
     * 商户负责人
     */
//    @NotBlank(message = "商户负责人不能为空")
    @Length(max = 32)
    private String merchantOwner;

    /**
     * 登录密码
     */
    @Length(max = 128)
    @NotBlank(message = "登录密码不能为空")
    private String password;

    /**
     * 确认密码
     */
    @Length(max = 128)
    @NotBlank(message = "确认密码不能为空")
    private String confirmPwd;

    /**
     * 收款人手机号
     */
//    @NotBlank(message = "收款人手机号不能为空")
    @Pattern(regexp="\\d{11}", message="payeeMobile必须是11位手机号码")
    private String payeeMobile;

    /**
     * 商户地址
     */
    @Length(max = 128)
    private String companyAddress;

    /**
     * 验证码
     */
    @Length(max = 6)
    private String code;

    /**
     * 临时验证码
     */
    @NotBlank(message = "临时验证码不能为空")
    private String tempCode;

    /**
     * 商户法人姓名
     */
    @NotBlank(message = "商户法人姓名不能为空")
    private String name;

    //---------------内部参数----------------
    /**
     * 商户号
     */
    private String merchantId;

}
